package com.wdz.pma.dao;

import com.wdz.pma.dto.ChartData;
import com.wdz.pma.entities.Project;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.CrudRepository;

import java.util.List;

//继承CrudRepository以使用CRUD方法     <实体类名，ID字段类型>
public interface ProjectRepository extends CrudRepository<Project ,Long> {

//覆盖原本默认的findAll()方法，原先返回-Iterable,这里自定义返回-List【列表】
//    列表实体为Project
    @Override
    public List<Project> findAll();

//    自定义查询方法   --getProjectStatus()--
    @Query(nativeQuery = true, value = "SELECT stage as label,COUNT(*) as value FROM project GROUP BY stage")
    List<ChartData> getProjectStatus(); //获得的每一行数据用ChartData代表，随后创建DTO
}
